.pe-checkbox-button {
    --pe-checkbox-button-size: var(--pe-default-height);
    --pe-checkbox-button-padding: var(--pe-padding-default);
    --pe-checkbox-button-font-size: var(--pe-font-size-default);
    --pe-checkbox-button-border-color: var(--pe-color-border);
    --pe-checkbox-button-hover-border-color: var(--pe-color-primary);
}

.pe-checkbox-button {
    display: flex;
    align-items: center;
    height: var(--pe-checkbox-button-size);
    padding: var(--pe-checkbox-button-padding);
    border: 1px solid var(--pe-checkbox-button-border-color);
    transition: var(--pe-all-transition);
    cursor: pointer;
    border-right-width: 0;
    background-color: var(--pe-color-white);

    &:hover {
        .pe-checkbox-button-content {
            color: var(--pe-checkbox-button-hover-border-color);
        }
    }

    .pe-checkbox-button-content {
        font-size: var(--pe-checkbox-button-font-size);
        color: var(--pe-color-text);
        transition: var(--pe-all-transition);
    }
}

.pe-checkbox-button-active.pe-checkbox-button {
    background-color: var(--pe-checkbox-button-hover-border-color);
    border-color: var(--pe-checkbox-button-hover-border-color);
    border-left-color: var(--pe-color-white);

    .pe-checkbox-button-content {
        color: var(--pe-color-white);
    }
}

.pe-checkbox-button-disabled {
    --pe-checkbox-button-hover-border-color: var(--pe-checkbox-button-border-color);
    cursor: not-allowed;

    .pe-checkbox-button-content {
        color: var(--pe-checkbox-button-border-color);
    }
}

.pe-checkbox-button-large {
    --pe-checkbox-button-size: var(--pe-large-height);
    --pe-checkbox-button-padding: var(--pe-padding-large);
    --pe-checkbox-button-font-size: var(--pe-font-size-large);
}

.pe-checkbox-button-small {
    --pe-checkbox-button-size: var(--pe-small-height);
    --pe-checkbox-button-padding: var(--pe-padding-small);
    --pe-checkbox-button-font-size: var(--pe-font-size-small);
}